﻿package com.firewolf.iteratorAndComponent.combine;

import java.util.Iterator;

/**
 * 菜单组件，让所有的菜单组件都实现MenuComponent接口，提供了一些方法，
 * 菜单和菜单项都实现这个接口，不过他们可能只实现其中的一部分方法
 * 加入了一个迭代器
 * @author Administrator
 *
 */
public abstract class MenuComponent {
	/**
	 * 增加一个菜单组件
	 * @param menuComponent
	 */
	public void add(MenuComponent menuComponent){
		throw new UnsupportedOperationException();
	}
	
	/**
	 * 移除一个菜单组件
	 * @param menuComponent
	 */
	public void remove(MenuComponent menuComponent){
		throw new UnsupportedOperationException();
	}
	
	/**
	 * 得到第i个孩子
	 * @param i
	 * @return
	 */
	public MenuComponent getChild(int i){
		throw new UnsupportedOperationException();
	}
	
	/**
	 * 得到组件的名称
	 * @return
	 */
	public String getName(){
		throw new UnsupportedOperationException();
	}
	
	/**
	 * 获取组件的描述
	 * @return
	 */
	public String getDescription(){
		throw new UnsupportedOperationException();
	}
	
	/**
	 * 获取价格
	 * @return
	 */
	public double getPrice(){
		throw new UnsupportedOperationException();
	}
	
	/**
	 * 查看是否为素食
	 * @return
	 */
	public boolean isVegetarian() {
		throw new UnsupportedOperationException();
	}
	
	/**
	 * 打印信息
	 */
	public void print(){
		throw new UnsupportedOperationException();
	}
	
	/**
	 * 获取迭代器
	 * @return
	 */
	@SuppressWarnings("rawtypes")
	public Iterator getIterator(){
		throw new UnsupportedOperationException();
	}
}
